package proxy.cglib;

import net.sf.cglib.proxy.Enhancer;

public class IntermediaryCglibProxyFactory {
    //获取代理对象的方法
    public static <T> T create(Class<T> target) {
        Enhancer enhancer = new Enhancer();
        // 设置父类的字节码对象。指定父类
        enhancer.setSuperclass(target);
        // 设置回调函数
        enhancer.setCallback(new IntermediaryMethodInterceptor());
        // 创建代理对象
        return (T) enhancer.create();
    }
}
